using Process.Domain.DTO.InputDTO;
using Process.Domain.DTO.OutDTO;
using Process.Result;
using System.Collections.Generic;

namespace Process.Application.Department
{
    public interface IDepartmentService
    {
        /// <summary>
        /// 获取所有部门
        /// </summary>
        /// <returns>部门列表</returns>
        ApiResult<List<PagingDepartmentDTO>> GetAllDepartments();

        /// <summary>
        /// 分页查询部门
        /// </summary>
        /// <param name="input">分页查询参数</param>
        /// <returns>分页结果</returns>
        Apipaging<PagingDepartmentDTO> PagingDepartment(PagingDepartmentInput input);

        /// <summary>
        /// 根据ID获取部门
        /// </summary>
        /// <param name="id">部门ID</param>
        /// <returns>部门信息</returns>
        ApiResult<PagingDepartmentDTO> GetDepartmentById(long id);


        ApiResult<List<ShowDepartmnetDTO>> ShowDepartments();

        ApiResult<ShowDepartmnetDTO> GetDepartmentById2(long id);

    }
} 